package com.caifu.service;

import com.caifu.pojo.ZcOrderingRecords;
import com.baomidou.mybatisplus.extension.service.IService;
import net.sf.json.JSONObject;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 订餐记录表 服务类
 * </p>
 *
 * @author Lyf
 * @since 2020-11-09
 */
public interface ZcOrderingRecordsService extends IService<ZcOrderingRecords> {

    /**
     * 功能描述: 根据组织编号获取组织机构信息
     *
     * @auther: Lyf
     * @date: 2020/11/11 15:57
     * @param:
     * @return:
     */
    Map<String,String> getOrgInfo(Long orgId);

    /**
     * 功能描述: 保存订餐
     *
     * @auther: Lyf
     * @date: 2020/11/13 15:45
     * @param:
     * @return:
     */
    List<JSONObject> saveOrder(String data, String month, String name, String orgId, String supplyFoodAddress, int userNo, String foodType, String reportingStauts,String orderId);


    /**
     * 功能描述: 保存订餐
     *
     * @auther: Lyf
     * @date: 2020/11/13 15:45
     * @param:
     * @return:
     */
    ZcOrderingRecords saveOrderOne(String data, String month, String name, String orgId, String supplyFoodAddress, int userNo, String foodType,String orderId);

    /**
     * 功能描述: 获取订餐记录详情列表
     *
     * @auther: Lyf
     * @date: 2020/11/15 11:42
     * @param:
     * @return:
     */
    List<Map<String,String>> getOrderData(String orderId, String month, String foodType);

    /**
     * 功能描述: 根据用户编号获取近6月补贴金额
     *
     * @auther: Lyf
     * @date: 2020/11/25 10:56
     * @param:
     * @return:
     */
    Map<String,Object> getSubsidyStatisticsByUserNo(String userNo);

    /**
     * 功能描述: 删除
     *
     * @auther: Lyf
     * @date: 2020/11/26 14:15
     * @param:
     * @return:
     */
    void deleteRecord(String id);

    /**
     * 功能描述: 根据orgId、month、foodType（早/晚餐）获取记录数
     *
     * @auther: Lyf
     * @date: 2020/11/30 16:58
     * @param:
     * @return:
     */
    int getOrderingCount(String orgId,String month,String foodType);

    /**
     * description: 获取导出数据表头
     * param
     * return: java.util.List<java.util.List<java.lang.String>>
     * author: Tian
     * time: 2020/11/19 10:13
     */
    List<List<String>> getExcelHead(int count);

    /**
     * 功能描述: 根据月份和组织机构获取导出数据
     *
     * @auther: Lyf
     * @date: 2020/12/3 17:01
     * @param:
     * @return:
     */
    List<Map<String,String>> getExportData(String orgId,String month,String tyep);

    /**
     * 功能描述: 获取当日餐别类型
     *
     * @auther: Lyf
     * @date: 2020/12/8 10:14
     * @param:
     * @return:
     */
    List<Map<String,String>> getFoodType(String orgId,String month,String day);

    /**
     * 功能描述: 确认送餐
     *
     * @auther: Lyf
     * @date: 2020/12/8 13:31
     * @param:
     * @return:
     */
    void confirm(String orgId,String month,String type);

    void initData();
}
